---
apiVersion: apiextensions.k8s.io/v1
kind: CustomResourceDefinition
metadata:
  annotations:
    controller-gen.kubebuilder.io/version: v0.10.0
  labels:
    gatekeeper.sh/system: "yes"
  name: expansiontemplate.expansion.gatekeeper.sh
spec:
  group: expansion.gatekeeper.sh
  names:
    kind: ExpansionTemplate
    listKind: ExpansionTemplateList
    plural: expansiontemplate
    singular: expansiontemplate
  preserveUnknownFields: false
  scope: Cluster
  versions:
    - name: v1alpha1
      schema:
        openAPIV3Schema:
          description: ExpansionTemplate is the Schema for the ExpansionTemplate API.
          properties:
            apiVersion:
              description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
              type: string
            kind:
              description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
              type: string
            metadata:
              type: object
            spec:
              description: ExpansionTemplateSpec defines the desired state of ExpansionTemplate.
              properties:
                applyTo:
                  description: ApplyTo lists the specific groups, versions and kinds of generator resources which will be expanded.
                  items:
                    description: ApplyTo determines what GVKs items the mutation should apply to. Globs are not allowed.
                    properties:
                      groups:
                        items:
                          type: string
                        type: array
                      kinds:
                        items:
                          type: string
                        type: array
                      versions:
                        items:
                          type: string
                        type: array
                    type: object
                  type: array
                enforcementAction:
                  description: EnforcementAction specifies the enforcement action to be used for resources matching the ExpansionTemplate. Specifying an empty value will use the enforcement action specified by the Constraint in violation.
                  type: string
                generatedGVK:
                  description: GeneratedGVK specifies the GVK of the resources which the generator resource creates.
                  properties:
                    group:
                      type: string
                    kind:
                      type: string
                    version:
                      type: string
                  type: object
                templateSource:
                  description: TemplateSource specifies the source field on the generator resource to use as the base for expanded resource. For Pod-creating generators, this is usually spec.template
                  type: string
              type: object
            status:
              description: ExpansionTemplateStatus defines the observed state of ExpansionTemplate.
              properties:
                byPod:
                  items:
                    description: ExpansionTemplatePodStatusStatus defines the observed state of ExpansionTemplatePodStatus.
                    properties:
                      errors:
                        items:
                          properties:
                            message:
                              type: string
                            type:
                              type: string
                          required:
                            - message
                          type: object
                        type: array
                      id:
                        description: 'Important: Run "make" to regenerate code after modifying this file'
                        type: string
                      observedGeneration:
                        format: int64
                        type: integer
                      operations:
                        items:
                          type: string
                        type: array
                      templateUID:
                        description: UID is a type that holds unique ID values, including UUIDs.  Because we don't ONLY use UUIDs, this is an alias to string.  Being a type captures intent and helps make sure that UIDs and names do not get conflated.
                        type: string
                    type: object
                  type: array
              type: object
          type: object
      served: true
      storage: true
      subresources:
        status: {}
    - name: v1beta1
      schema:
        openAPIV3Schema:
          description: ExpansionTemplate is the Schema for the ExpansionTemplate API.
          properties:
            apiVersion:
              description: "APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources"
              type: string
            kind:
              description: "Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds"
              type: string
            metadata:
              type: object
            spec:
              description: ExpansionTemplateSpec defines the desired state of ExpansionTemplate.
              properties:
                applyTo:
                  description: ApplyTo lists the specific groups, versions and kinds of generator resources which will be expanded.
                  items:
                    description: ApplyTo determines what GVKs items the mutation should apply to. Globs are not allowed.
                    properties:
                      groups:
                        items:
                          type: string
                        type: array
                      kinds:
                        items:
                          type: string
                        type: array
                      versions:
                        items:
                          type: string
                        type: array
                    type: object
                  type: array
                enforcementAction:
                  description: EnforcementAction specifies the enforcement action to be used for resources matching the ExpansionTemplate. Specifying an empty value will use the enforcement action specified by the Constraint in violation.
                  type: string
                generatedGVK:
                  description: GeneratedGVK specifies the GVK of the resources which the generator resource creates.
                  properties:
                    group:
                      type: string
                    kind:
                      type: string
                    version:
                      type: string
                  type: object
                templateSource:
                  description: TemplateSource specifies the source field on the generator resource to use as the base for expanded resource. For Pod-creating generators, this is usually spec.template
                  type: string
              type: object
            status:
              description: ExpansionTemplateStatus defines the observed state of ExpansionTemplate.
              properties:
                byPod:
                  items:
                    description: ExpansionTemplatePodStatusStatus defines the observed state of ExpansionTemplatePodStatus.
                    properties:
                      errors:
                        items:
                          properties:
                            message:
                              type: string
                            type:
                              type: string
                          required:
                            - message
                          type: object
                        type: array
                      id:
                        description: 'Important: Run "make" to regenerate code after modifying this file'
                        type: string
                      observedGeneration:
                        format: int64
                        type: integer
                      operations:
                        items:
                          type: string
                        type: array
                      templateUID:
                        description: UID is a type that holds unique ID values, including UUIDs.  Because we don't ONLY use UUIDs, this is an alias to string.  Being a type captures intent and helps make sure that UIDs and names do not get conflated.
                        type: string
                    type: object
                  type: array
              type: object
          type: object
      served: true
      storage: false
      subresources:
        status: {}
